主题
BindWindow 错误码说明 - BindWindowErrorCodes
概述
BindWindow / BindWindowEx 在绑定失败时返回负数,其绝对值即为错误码,与 GetLastError() 返回值一致。
绑定成功返回 1。已绑定同一对象时再次绑定也返回 1(幂等成功)。
失败时建议同时调用:
GetLastError():获取错误码(正整数,如4032)GetLastErrorString():获取中文说明(用完后FreeStringPtr释放)
cpp
int ret = ola.BindWindowEx(hwnd, "dx", "dx", "dx", "", 0);
if (ret != 1) {
int err = GetLastError(); // 例如 4032
int code = ret < 0 ? -ret : err; // 与 GetLastError 一致
char* msg = (char*)GetLastErrorString();
// 根据 code 排查,见下表
FreeStringPtr((int64_t)msg);
}通用错误(10xx)
| 返回值 | GetLastError | 说明 | 排查建议 |
|---|---|---|---|
-1001 | 1001 | 权限不足 / 未登录 | 调用 Login/Reg;检查 FeatureList |
-1004 | 1004 | VMware 功能无权限 | 升级授权或使用非 VMware 模式 |
绑定参数与环境(40xx)
| 返回值 | GetLastError | 说明 | 排查建议 |
|---|---|---|---|
-4001 | 4001 | 窗口句柄无效 | 确认 hwnd 未销毁 |
-4002 | 4002 | 无法获取窗口 PID | 窗口是否存在、是否跨会话 |
-4003 | 4003 | display/mouse/keypad 模式无效 | 检查模式字符串拼写 |
-4004 | 4004 | 未管理员权限 | IsElevated 或 EnsureElevated=false |
-4010 | 4010 | VNC 连接失败 | VncServer/VncPort/密码 |
-4011 | 4011 | RDP 连接失败 | RDP 配置与网络 |
Hook 准备阶段(402x)
| 返回值 | GetLastError | 说明 | 排查建议 |
|---|---|---|---|
-4020 | 4020 | 共享内存创建失败 | 杀软、权限 |
-4021 | 4021 | 目标 Hook 仍在卸载 | 等待数秒后重试 |
-4022 | 4022 | 绑定互斥量创建失败 | 系统资源 |
-4023 | 4023 | 绑定互斥量获取超时 | 多实例绑同一窗口 |
-4024 | 4024 | 心跳/运行参数配置失败 | 日志、杀软 |
-4025 | 4025 | DX3 IPC 预初始化失败 | 沙箱/多开;SharedMemoryNamePrefix |
DLL 注入(403x,中文路径重点)
| 返回值 | GetLastError | 说明 | 排查建议 |
|---|---|---|---|
-4030 | 4030 | 注入失败(通用) | 查看日志 |
-4031 | 4031 | 无痕内存注入失败 | mode=0 时会先尝试;可试 mode=1 |
-4032 | 4032 | RemoteExe 注入失败 | 中文 Temp 路径、inject-helper、杀软 |
-4033 | 4033 | 远程线程注入失败 | OpenProcess / LoadLibrary |
-4034 | 4034 | 临时 Hook DLL 写入失败 | Temp 目录权限、中文路径 |
-4035 | 4035 | inject-helper 释出失败 | Temp 写权限 |
-4036 | 4036 | CreateProcess 启动 inject-helper 失败 | 路径、杀软拦截 |
-4037 | 4037 | Hook DLL 文件不存在 | 注入前校验失败 |
-4038 | 4038 | Hook 互斥量仍存在 | 等待卸载后重绑 |
-4039 | 4039 | 注入后 10s 未检测到模块 | inject-helper 卡住、LoadLibrary 失败 |
-4040 | 4040 | 内置 hook_graphics 解码失败 | 安装包损坏 |
-4041 | 4041 | inject-helper 不存在 | 同 4035 |
-4042 | 4042 | OpenProcess 失败 | 权限、保护进程 |
-4043 | 4043 | 反射注入失败 | mode=11 |
-4044 | 4044 | 驱动注入失败 | mode=2/3/4、驱动加载 |
Hook 初始化(405x / 409x)
| 返回值 | GetLastError | 说明 | 排查建议 |
|---|---|---|---|
-4050 | 4050 | Hook 初始化超时 | hookCompleted 未置位;目标无渲染 |
-4099 | 4099 | 内部异常 | 联系支持并提供日志 |
